package com.jiyun.service;

import com.baomidou.mybatisplus.core.metadata.PageList;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.jiyun.model.day10.Record;
import com.jiyun.model.day14.Member;
import com.jiyun.vo.Result;
import com.jiyun.vo.day07.CatalogDto;
import com.jiyun.vo.day08.CourseCto;
import com.jiyun.vo.day08.CourseVo;
import com.jiyun.vo.day10.RecordVo;
import com.jiyun.vo.day10.TopicDto2;
import com.jiyun.vo.day11.RollDto;
import com.jiyun.vo.day11.RollVo;
import com.jiyun.vo.day12.RivalDto2;
import com.jiyun.vo.day12.RivalVo;
import com.jiyun.vo.day14.TeamVo;
import com.jiyun.vo.day15.TraineeDto;
import com.jiyun.vo.day15.TraineeVo;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

/**
 * @Author yangYingJie
 * @Date 2023/8/22 11：02
 **/
public interface MemberService extends IService<Member> {
    String login(Member member);

    Integer findByIdRival(HttpServletRequest request);

    Integer findByIdCourse(HttpServletRequest request);

    Integer findByIdTrainee(HttpServletRequest request);

    List<CourseVo> findAll();

    void updateDianZan(Integer id);

    void moRen();

    List<CourseVo> findReCourse();

    List<RollVo> findReRoll();

    void dinaZanRoll(Integer id);

    void qvXiaoRoll(Integer id);

    List<TraineeVo> findReTrainee();

    PageInfo<CourseVo> findDetailAll(CourseCto courseCto);

    Map<String, Object> findDetailCourseOne(Integer id, HttpServletRequest request);

    void updateCatalogStatus(CatalogDto dto, HttpServletRequest request);

    void addCataloges(String id, HttpServletRequest request);

    PageInfo<RivalVo> findRivalAll(RivalDto2 dto);

    RivalVo findRivalDetail(String id, HttpServletRequest request);

    Result findByIdMember(HttpServletRequest request);

    Result findAllTeam();

    void addTeamMember(String id, HttpServletRequest request);

    void addRivalMember(String id, HttpServletRequest request);

    Result findCRoll(Record record, HttpServletRequest request);

    Result findCTopic(TopicDto2 dto);

    Result addRecord(Record record);

    Result findCTopic2(TopicDto2 dto);

    List<Record> findRecord(TopicDto2 dto);

    Integer findFen(TopicDto2 dto);

    Result findCTrainee(TraineeDto dto);

    TraineeVo findTrianeeById(String id);

    void addTraineeMember(String id);

    List<CourseVo> findByIdCataloges(Integer id);

    List<RollVo> findTraineeRoll(Integer id);

    PageInfo<RollVo> findShowRoll(RollDto dto);

    List<RivalVo> memberRival(RivalDto2 dto);

    TeamVo findByIdTeam(Integer id);

    List<RecordVo> findByIdRecord(Integer id);

    Integer findRollNum(HttpServletRequest request);
}
